package io.github.echarts.option.style;

import io.github.echarts.option.abstracts.AbstractOption;

/**
 * 线条样式配置。
 */
public class LineStyle extends AbstractOption {
    
    private static final long serialVersionUID = 1L;
    
    private String color;
    private Integer width;
    private String type;
    private Double opacity;
    
    /**
     * 获取线条颜色。
     *
     * @return 线条颜色
     */
    public String getColor() {
        return color;
    }
    
    /**
     * 设置线条颜色。
     *
     * @param color 线条颜色
     * @return 当前配置实例，用于链式调用
     */
    public LineStyle setColor(String color) {
        this.color = color;
        return this;
    }
    
    /**
     * 获取线条宽度。
     *
     * @return 线条宽度
     */
    public Integer getWidth() {
        return width;
    }
    
    /**
     * 设置线条宽度。
     *
     * @param width 线条宽度
     * @return 当前配置实例，用于链式调用
     */
    public LineStyle setWidth(Integer width) {
        this.width = width;
        return this;
    }
    
    /**
     * 获取线条类型。
     * 可选值：'solid', 'dashed', 'dotted'
     *
     * @return 线条类型
     */
    public String getType() {
        return type;
    }
    
    /**
     * 设置线条类型。
     *
     * @param type 线条类型
     * @return 当前配置实例，用于链式调用
     */
    public LineStyle setType(String type) {
        this.type = type;
        return this;
    }
    
    /**
     * 获取线条透明度。
     * 范围：0（完全透明）到1（完全不透明）
     *
     * @return 线条透明度
     */
    public Double getOpacity() {
        return opacity;
    }
    
    /**
     * 设置线条透明度。
     *
     * @param opacity 线条透明度
     * @return 当前配置实例，用于链式调用
     */
    public LineStyle setOpacity(Double opacity) {
        this.opacity = opacity;
        return this;
    }
} 